Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(crypto): CRP-2682 Change key derivation used in VetKD to BLS12-381 hash_to_scalar #3736

Merged
merged 10 commits into from
Feb 13, 2025

Conversation

randombit
Copy link
Contributor

@randombit randombit commented Feb 3, 2025

The approach originally used for the vetKD prototype for key derivation used SHAKE, largely as an artifact that we implemented an IBE demo as part of the same prototype, and SHAKE happened to be convenient for implementing IBE. However for production use of vetKD we will switch to using hash_to_scalar, a variant of RFC 9380's hash_to_field, since we already depend on the security of hash_to_field for implementing the hash to curve operation, upon which the security of vetKD depends. Thus we slightly reduce the number of cryptographic primitives vetKD depends on for its security.

@github-actions github-actions bot added the chore label Feb 3, 2025
@randombit randombit marked this pull request as ready for review February 4, 2025 23:11
@randombit randombit requested a review from a team as a code owner February 4, 2025 23:11
@randombit randombit requested review from altkdf and fspreiss February 5, 2025 16:24
Copy link
Member

@fspreiss fspreiss left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @randombit! Looks good to me. Maybe add a short PR descriptions. Also, ideally also @andreacerulli can look at this before merging.

Copy link
Contributor

@andreacerulli andreacerulli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks @randombit

@randombit randombit enabled auto-merge February 13, 2025 18:44
@randombit randombit added this pull request to the merge queue Feb 13, 2025
Merged via the queue into master with commit 2fd87b6 Feb 13, 2025
24 checks passed
@randombit randombit deleted the jack/crp-2682 branch February 13, 2025 19:54
marko-k0 pushed a commit that referenced this pull request Feb 14, 2025
…381 hash_to_scalar (#3736)

The approach originally used for the vetKD prototype for key derivation
used SHAKE, largely as an artifact that we implemented an IBE demo as
part of the same prototype, and SHAKE happened to be convenient for
implementing IBE. However for production use of vetKD we will switch to
using `hash_to_scalar`, a variant of RFC 9380's `hash_to_field`, since
we already depend on the security of `hash_to_field` for implementing
the hash to curve operation, upon which the security of vetKD depends.
Thus we slightly reduce the number of cryptographic primitives vetKD
depends on for its security.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants